from PIL import Image
import os

# 配置路径
overlay_path = "GZ.psd"  # 或转换为PNG "公众.png"
png_dir = "FY2025052966465088_output_images/"
output_dir = "FY2025052966465088_output_images_GZ/"
 

# 公章位置调整参数（单位：像素）
position_x = 100  # 向右增加，向左减少
position_y = 50   # 向下增加，向上减少

# 确保输出目录存在
os.makedirs(output_dir, exist_ok=True)

# 加载公章（保持原始大小）
overlay = Image.open(overlay_path).convert("RGBA")
overlay_width, overlay_height = overlay.size

for png_file in os.listdir(png_dir):
    if png_file.lower().endswith('.png'):
        # 打开背景图
        bg = Image.open(os.path.join(png_dir, png_file)).convert("RGBA")
        bg_width, bg_height = bg.size
        
        # 创建空白透明层
        combined = Image.new("RGBA", bg.size)
        
        # 先粘贴背景
        combined.paste(bg, (0, 0))
        
        # 计算公章位置（示例：右下角）
        # 如果要其他位置可以修改这里：
        # 左上角: (position_x, position_y)
        # 右上角: (bg_width - overlay_width - position_x, position_y)
        # 左下角: (position_x, bg_height - overlay_height - position_y)
        # 右下角: (bg_width - overlay_width - position_x, bg_height - overlay_height - position_y)
        paste_position = (
            bg_width - overlay_width - position_x,  # X坐标
            bg_height - overlay_height - position_y  # Y坐标
        )
        
        # 粘贴公章（保持原始大小）
        combined.paste(overlay, paste_position, overlay)
        
        # 保存
        combined.save(os.path.join(output_dir, png_file))
        print(f"已处理: {png_file} | 位置: {paste_position}")
 
 